using System;
using System.Collections.Generic;
using System.Text;

namespace NBusiness.Query
{
    public interface ISource : IFrom, ISelectable
    {
        string Alias { get; set; }

        IQuery Where(IExpression expression);
        IQuery OrderBy(IOrder orderBy);
        IQuery OrderBy(SortOrder order, params IColumn[] columns);
        IQuery GroupBy(params IColumn[] groupBy);
        IQuery Select(params ISelectable[] selectable);

        IQuery Join(IJoin join);
    }
}
